// 冒泡排序 大O:n^2
// 执行顺序：从第一位开始依次和右边的数进行比较，直到将最大的数移动到最右边...

let arr = [9, 3, 1, 4, 6, 8, 7, 5, 2]

function sortArray(arr) {
  for (let i = arr.length - 1; i > 0; i--) {
    for (let j = 0; j < i; j++) {
      if (arr[j] > arr[j + 1]) {
        swap(arr, j, j + 1)
      }
    }
  }
  return arr
}

// function bubbleSort2(arr) {
//   var len = arr.length
//   for (var i = 0; i < len - 1; i++) {
//     for (var j = 0; j < len - 1 - i; j++) {
//       if (arr[j] > arr[j + 1]) {
//         // 相邻元素两两对比
//         swap(arr, j, j + 1)
//       }
//     }
//   }
//   return arr
// }

function swap(arr, i, j) {
  let temp = arr[i]
  arr[i] = arr[j]
  arr[j] = temp
}

console.log(sortArray(arr))
